From abc8d61730a657dc8640fc8d40c55d8859e74ae6 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Fri, 1 Dec 2017 14:32:38 +0100 Subject: [PATCH] vulkan: Fix border shader to premultiply color The inColor wasn't premultiplied, so the resulting colors were wrong with translucent borders. --- .../vulkan/border-clip-rounded.frag.spv | Bin 10212 -> 10456 bytes gsk/resources/vulkan/border-clip.frag.spv | Bin 9560 -> 9804 bytes gsk/resources/vulkan/border.frag | 2 +- gsk/resources/vulkan/border.frag.spv | Bin 9560 -> 9804 bytes 4 files changed, 1 insertion(+), 1 deletion(-) diff --git a/gsk/resources/vulkan/border-clip-rounded.frag.spv b/gsk/resources/vulkan/border-clip-rounded.frag.spv index 690c02be05ad5375d1abfac52219f4b2b3d2434c..f60047f978134dfdefdaa1f61aaac5d6fd7d8e44 100644 GIT binary patch delta 439 zcmZ9Iy-LGy6va={HWf+)L8yZTK^%MpkqXWZZD*%GfJOQO9mLfoet);x)KxP09Bw{< zTc?h0{!UFCn&fcL|J-wKF8}Y=S0^ron^h^`jrH~(XVJ=QARTx6-6KgAm6c|n(P6n! zhhET%kV{~L^EGEaMag#UV;*FdcIm8B(`;5t!oekubI{V#e83gln&HPK1pEBW18;!+ zJ+vmH{KMN^Kf~iC?ttf5FLL+r#oR-nf!yd2^q@z$!+r|wDc39)+H2Q^2Ll1PQe}*=v(&LJf%9Y!-@`1;9FFC+_NX4PO_in G>Dn(WQaIuO delta 205 zcmcZ+_{5)=nMs+Qfq@YSc^T$x^;3a5rU0=mP?!xUJPpWh2I4-Tei0ylI*<)g0}=BPgVb9BO#hVX^ zg0S=o9zai{@4<{gd#H5PSFft8JA7_@Y()cRA}nIyi^@|w8c?$jhKQXiq_QFslAu)o z#7bPfpsaZplq*}dMd4#iba;GZ@25{nxlFOgbzWJ9s~c+4XzG@7w*ATw)ay9Gj}vT% z)z2`RjPx;{K;4SZbUqx5vqQkk9AIBV_$=n~*{#Qjedc(K zgYDv0e2Y6U)>F?sn*R=1fuDwPKx*&dQ(rMQdm=u}BR~eWjA!R#F{aOd6AO|Uk;OIm SbJ(e2j+z4YTIX%}b^Hf*7EiqZ delta 439 zcmY+AF;4{w%^Z-GDldEZLwz9Oaq9RvX z+tJwhS1gRa7q|p>Gntuh-p=gq;{5B(wXLEfqOe^F=B}*^4@$&qbQ^6EiAzj||8gz9 zDe3H?56aaZc%reH6J6b0dl${S{%xzbB#tQC%d$2072JRzn!k+OCju;@OhMXF&_o@Dmxnh diff --git a/gsk/resources/vulkan/border.frag b/gsk/resources/vulkan/border.frag index 988b1f6f4a..193ccfa6eb 100644 --- a/gsk/resources/vulkan/border.frag +++ b/gsk/resources/vulkan/border.frag @@ -20,5 +20,5 @@ void main() float alpha = clamp (rounded_rect_coverage (routside, inPos) - rounded_rect_coverage (rinside, inPos), 0.0, 1.0); - color = clip (inPos, inColor * alpha); + color = clip (inPos, vec4(inColor.rgb * inColor.a, inColor.a) * alpha); } diff --git a/gsk/resources/vulkan/border.frag.spv b/gsk/resources/vulkan/border.frag.spv index 1a3fda7d674c2c22673390ff18699cbda49b41d8..2fc1ca1dcb7d33fb0fb2ba1c5de6211ad5374599 100644 GIT binary patch delta 675 zcmZ9KO-=$q5QS?7XcU9dAdZQ~Xow4!E{W0TO5;z|6DY{WL~sDXe@9ecz{E|jJOC@> zg0S=o9zai{@4<{gd#H5PSFft8JA7_@Y()cRA}nIyi^@|w8c?$jhKQXiq_QFslAu)o z#7bPfpsaZplq*}dMd4#iba;GZ@25{nxlFOgbzWJ9s~c+4XzG@7w*ATw)ay9Gj}vT% z)z2`RjPx;{K;4SZbUqx5vqQkk9AIBV_$=n~*{#Qjedc(K zgYDv0e2Y6U)>F?sn*R=1fuDwPKx*&dQ(rMQdm=u}BR~eWjA!R#F{aOd6AO|Uk;OIm SbJ(e2j+z4YTIX%}b^Hf*7EiqZ delta 439 zcmY+AF;4{w%^Z-GDldEZLwz9Oaq9RvX z+tJwhS1gRa7q|p>Gntuh-p=gq;{5B(wXLEfqOe^F=B}*^4@$&qbQ^6EiAzj||8gz9 zDe3H?56aaZc%reH6J6b0dl${S{%xzbB#tQC%d$2072JRzn!k+OCju;@OhMXF&_o@Dmxnh -- 2.30.2